using SheLife.Domain.Entities;

namespace SheLife.Domain.Interfaces.Repositories
{
    /// <summary>
    /// 社区用户关注仓储接口
    /// </summary>
    public interface ICommunityUserFollowRepository : IRepository<CommunityUserFollow>
    {
        Task<IEnumerable<CommunityUserFollow>> GetByUserIdAsync(Guid userId);
        Task<IEnumerable<CommunityUserFollow>> GetByFollowedUserIdAsync(Guid followedUserId);
        Task<bool> IsFollowingAsync(Guid userId, Guid followedUserId);
        Task<int> GetFollowersCountAsync(Guid userId);
        Task<int> GetFollowingCountAsync(Guid userId);
    }
}